/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the Source EULA. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

/* Activity Bar */
.monaco-workbench > .activitybar .monaco-action-bar .action-label.explore {
	-webkit-mask: url('files-dark.svg') no-repeat 50% 50%;
}

/* --- Explorer viewlet --- */
.explorer-viewlet {
	height: 100%;
}

.explorer-viewlet .explorer-item,
.explorer-viewlet .open-editor,
.explorer-viewlet .editor-group {
	height: 22px;
	line-height: 22px;
}

.explorer-viewlet .explorer-item {
	display: flex; /* this helps showing the overflow ellipsis (...) even though we use display:inline-block for the labels */
	flex-wrap: nowrap;
}

.explorer-viewlet .explorer-item > a,
.explorer-viewlet .open-editor > a,
.explorer-viewlet .editor-group {
	text-overflow: ellipsis;
	overflow: hidden;
}

.explorer-viewlet .explorer-item,
.explorer-viewlet .explorer-item .monaco-inputbox {
	flex: 1;
}

.explorer-viewlet .explorer-item.explorer-item-edited .label-name {
	flex: 0; /* do not steal space when label is hidden because we are in edit mode */
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content {
	display: flex;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content > .monaco-action-bar {
	visibility: hidden;
}

.explorer-viewlet .panel-header .count {
	min-width: fit-content;
}

.explorer-viewlet .panel-header .monaco-count-badge.hidden {
	display: none;
}

.explorer-folders-view .monaco-tree-row .content {
	display: flex;
}

.explorer-folders-view .monaco-tree-row .content::before {
	background-size: 16px;
	background-position: 50% 50%;
	background-repeat: no-repeat;
	padding-right: 6px;
	width: 16px;
	height: 22px;
	display: inline-block;
	vertical-align: top;
	content: ' ';
}

.explorer-folders-view.align-icons-and-twisties .monaco-tree-row:not(.has-children) .content::before {
	display: none;
}

.explorer-folders-view .monaco-tree-row.has-children.expanded .content::before {
	background-image: url("expanded.svg");
}

.explorer-folders-view .monaco-tree-row.has-children .content::before {
	display: inline-block;
	background-image: url("collapsed.svg");
}

.vs-dark .explorer-folders-view .monaco-tree-row.has-children.expanded .content::before {
	background-image: url("expanded-dark.svg");
}

.vs-dark .explorer-folders-view .monaco-tree-row.has-children .content::before {
	background-image: url("collapsed-dark.svg");
}

.hc-black .explorer-folders-view .monaco-tree-row.has-children.expanded .content::before {
	background-image: url("expanded-hc.svg");
}

.hc-black .explorer-folders-view .monaco-tree-row.has-children .content::before {
	background-image: url("collapsed-hc.svg");
}

.explorer-folders-view.hide-arrows .monaco-tree-row .content::before {
	display: none;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row:hover > .content .monaco-action-bar,
.explorer-viewlet .explorer-open-editors .monaco-tree.focused .monaco-tree-row.focused > .content .monaco-action-bar,
.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content.dirty > .monaco-action-bar {
	visibility: visible;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content .monaco-action-bar .action-label {
	display: block;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content .monaco-action-bar .close-editor-action {
	width: 8px;
	height: 22px;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content .monaco-action-bar .action-close-all-files,
.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content .monaco-action-bar .save-all {
	width: 23px;
	height: 22px;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content > .open-editor {
	flex: 1;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row > .content > .editor-group {
	flex: 1;
}

.explorer-viewlet .monaco-count-badge {
	padding: 1px 6px;
	margin-left: 6px;
	border-radius: 0; /* goes better when ellipsis shows up on narrow sidebar */
}

.explorer-viewlet .explorer-empty-view {
	padding: 0 20px 0 20px;
}

.explorer-viewlet .explorer-item.nonexistent-root {
	opacity: 0.5;
}

.explorer-viewlet .explorer-item .monaco-inputbox {
	width: 100%;
	line-height: normal;
}

.monaco-workbench.linux .explorer-viewlet .explorer-item .monaco-inputbox,
.monaco-workbench.mac .explorer-viewlet .explorer-item .monaco-inputbox {
	height: 22px;
}

.explorer-viewlet .explorer-item .monaco-inputbox > .wrapper > .input {
	padding: 1px 2px;
}

.monaco-workbench.linux .explorer-viewlet .explorer-item .monaco-inputbox > .wrapper > .input,
.monaco-workbench.mac .explorer-viewlet .explorer-item .monaco-inputbox > .wrapper > .input {
	padding: 0;
	height: 20px;
}

.explorer-viewlet .explorer-open-editors .monaco-tree .monaco-tree-row .editor-group {
	font-size: 11px;
	font-weight: bold;
	text-transform: uppercase;
	cursor: default;
}

/* Bold font style does not go well with CJK fonts */
.explorer-viewlet:lang(zh-Hans) .explorer-open-editors .monaco-tree .monaco-tree-row .editor-group,
.explorer-viewlet:lang(zh-Hant) .explorer-open-editors .monaco-tree .monaco-tree-row .editor-group,
.explorer-viewlet:lang(ja) .explorer-open-editors .monaco-tree .monaco-tree-row .editor-group,
.explorer-viewlet:lang(ko) .explorer-open-editors .monaco-tree .monaco-tree-row .editor-group {
	font-weight: normal;
}

/* High Contrast Theming */
.hc-black .monaco-workbench .explorer-viewlet .explorer-item,
.hc-black .monaco-workbench .explorer-viewlet .open-editor,
.hc-black .monaco-workbench .explorer-viewlet .editor-group {
	line-height: 20px;
}
